#include "SEDRSP2Data.h"

#include "DataStructure/Common/Validation.h"

using namespace SG::DataStructure::FEM;

bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DESVARData& val1,
                                        const SEDRSP2Data::DESVARData& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE(m_DVID)
  return true;
}
bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DNODEData& val1,
                                        const SEDRSP2Data::DNODEData& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE(m_GRID)
  FIELD_COMPARE(m_COMP)
  return true;
}
bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DRESP1Data& val1,
                                        const SEDRSP2Data::DRESP1Data& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE(m_R1ID)
  return true;
}
bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DRESP2Data& val1,
                                        const SEDRSP2Data::DRESP2Data& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE(m_R2ID)
  return true;
}
bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DTABLEData& val1,
                                        const SEDRSP2Data::DTABLEData& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE_ARR(m_LABL, 8)
  return true;
}
bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DVCREL1Data& val1,
                                        const SEDRSP2Data::DVCREL1Data& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE(m_DC1ID)
  return true;
}
bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DVCREL2Data& val1,
                                        const SEDRSP2Data::DVCREL2Data& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE(m_DC2ID)
  return true;
}
bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DVMREL1Data& val1,
                                        const SEDRSP2Data::DVMREL1Data& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE(m_DM1ID)
  return true;
}
bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DVMREL2Data& val1,
                                        const SEDRSP2Data::DVMREL2Data& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE(m_DM2ID)
  return true;
}
bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DVPREL1Data& val1,
                                        const SEDRSP2Data::DVPREL1Data& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE(m_DP1ID)
  return true;
}
bool SG::DataStructure::FEM::operator==(const SEDRSP2Data::DVPREL2Data& val1,
                                        const SEDRSP2Data::DVPREL2Data& val2) {
  FIELD_COMPARE(m_SEID)
  FIELD_COMPARE(m_DP2ID)
  return true;
}

bool SG::DataStructure::FEM::operator==(const SEDRSP2Data& val1,
                                        const SEDRSP2Data& val2) {
  FIELD_COMPARE(m_id)
  FIELD_COMPARE_ARR(m_LABEL, 8)
  FIELD_COMPARE(m_EQID)
  FIELD_COMPARE(m_REGION)
  FIELD_COMPARE(m_METHOD)
  FIELD_COMPARE(m_C1)
  FIELD_COMPARE(m_C2)
  FIELD_COMPARE(m_C3)
  FIELD_COMPARE(m_domainId)
  return true;
}